package com.gufe.service.admin.club;

import com.gufe.entity.PPTQueryParam;
import com.gufe.entity.PrecollectMember;
import com.gufe.result.PageResult;
import com.gufe.vo.PPTvo.ClubPersionInfoVO;
import com.gufe.vo.PPTvo.CollegeCountVO;
import com.gufe.vo.PPTvo.GradeCountVO;
import com.gufe.vo.PPTvo.MemberVO;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.IOException;
import java.util.List;

public interface RetireMemberService {
    /**
     * 获取预征班展示数据
     *
     * @return
     */
    PageResult<MemberVO> getMembers(PPTQueryParam pptQueryParam);


    /**
     * 根据ID获取预征班成员信息
     * @param id
     * @return
     */
    PrecollectMember getMemberById(Integer id);

    /**
     * 根据ID导出预征班成员信息
     * @param id
     */
    XSSFWorkbook exportInfo(Integer id) throws IOException;


    /**
     * 查询预征班每个学院的人数总计
     * @return
     */
    List<CollegeCountVO> getCollegeCount();

    /**
     * 查询预征班每个年级的总人数
     * @return
     */
    List<GradeCountVO> getGradeCount();

    ClubPersionInfoVO getPersionInfo(Long studentId);
}
